Product Ordering Biz Api
CR Market
POST /listener/productOrderStateChangeEvent
- Mandatory fields are event.productOrder.id and event.productOrder.state
- event.productOrder.description contains error message(list mentioned below) when event.productOrder.state=failed
- Possible values of event.productOrder.state for our usecase are "inProgress","completed","failed","partial"
Unique id present in the Create product Order call response(order id) and callback request can be used to correlate the calls.
ORDER CREATED BUT WITH ERRORS: (List of possible error messages)
- many customer records
- contract not found
- contact not found
- address not found
- profile not found
- product not found
- price list not found
- associated line not found
- there is no client
GET /productOrder/{id}
- query parameter category is mandatory to retrieve Product Order
POST /productOrder
- Order id present in the response indicates that create product order call is not in failed state, and validaton errors should be corrected by Agent manually in siebel.
- There will be no order retry processes, if order id is created and present in the response.
- Callback API provides the state of Product Order.
System that creates the order must respect the values of the lists of values configured in the fields.
The order creation web service will only allow the creation of 1 order at a time.
- If the creation of the header and line records is successful, 1 send attempt will be made. If it fails, an error code will bereturned, with its respective error message.
- Product id, line number, relationships and Price id should be matching with siebel configuration as per the examples
Refer examples 1P_HFC_CR_B2C, 1P_FTTH_CR_B2C, 2P_HFC_CR_B2C, 2P_FTTH_CR_B2C, 3P_HFC_CR_B2C, 3P_FTTH_CR_B2C
Mandatory fields are:category(default value is "INSTALACION")agreement.id (from post /agreement response),billingAccount.id (from post /settlementAccount response),serviceAddress.addrNo (from post /customer response; characteristic.value where name="addressId ),requestedStartDate (from get /searchTimeSlot response),productOrderItem.id,productOrderItem.itemPrice.productOfferingPrice.id,productOrderItem.product.id,productOrderItem.productOrderItemRelationship.id (if relations are present),relatedParty.id when(if role="Contact"/"Customer"/"Dispatch"),relatedParty.role
PATCH /productOrder/{id}
- Update product order can be used for reschedule installation date usecase
- Only 1 order update is allowed at a time.
- The process will perform the update to FieldService(DLO) first. If there is a problem in this update, the error message will be answeredand the date will not be updated in Siebel.
- Mandatory fields: category(default value is "INSTALACION") and requestedStartDate
- Response is mapped from request payload
POST /cancelProductOrder
- productOrder.id is mandatory to cancel product order
- The process will perform the update to FieldService first. If there is a problem in this update, the error message will be answeredand the states in Siebel will not be changed.
- Only 1 order cancellation is allowed at a time.
- Response is mapped from request payload.